Un concetto di programmazione in cui un programma è composto da gruppi di
oggetti discreti che interagiscono tra loro e che possono essere
realizzati separatamente, anche da persone diverse che non sono
direttamente in contatto tra loro, ma rispettano tutte una serie di regole
universali. Si definisce una gerarchia di classi, ciascuna delle quali
descrive i dati contenuti negli oggetti di quella classe oppure il
funzionamento degli oggetti stessi. Tali oggetti possono interagire tra
loro e con gli oggetti di altre classi.
Tali oggetti consistono a loro volta di raccolte autonome di dati, metodi
e chiamate a funzioni interne, definiti allÆinterno del programma
medesimo. Il programma risulta pertanto costituito da una serie di classi
organizzate gerarchicamente che descrivono i dati e il funzionamento di
oggetti che interagiscono con altri oggetti.
Il programmatore crea una classe nella quale definisce i dati e porzioni
di codice eseguibile abbinate a un oggetto, quindi definisce lÆoggetto
medesimo come instanza (esempio) di quella classe. LÆinstanza viene usata
alla stregua di una variabile di programma. In alcuni linguaggi, gli
oggetti rispondono a messaggi, che rappresentano il principale mezzo di
comunicazione per questo tipo di ambiente. In altri linguaggi, si utilizza
invece il tradizionale metodo delle chiamate procedurali. La
programmazione a oggetti usa i concetti di incapsulamento, eredità e
polimorfismo.
|